#ifndef VERIFY_TASK_H
#define VERIFY_TASK_H
#include <boost/shared_ptr.hpp>
#include <boost/function.hpp>
#include <string>
#include <database_module.h>

struct CVerifyTask
{
    typedef boost::shared_ptr<CVerifyTask> pointer;
    typedef boost::function<void (const char *, bool, uint32)> TCallback;
    std::string UsrName;
    std::string Password;
    TCallback CallbackFunc;
    bool Result;
    uint32 DigitID;

    CVerifyTask(const char * szUser, const char * szPwd, TCallback fCallback);

    ~CVerifyTask();

    void Callback();

    void DatabaseCallback(utility::database::query_result * res, const utility::database::error_code & ec);

};

#endif // endif of VERIFY_TASK_H
